package com.cloudkinto.service.redpacket.vo;

import lombok.Data;

/**
 * Author Administrator
 *
 * @Des
 * @Version
 * @Date 2021/2/23
 */
@Data
public class WxPaySuccessResponse {

    /**
     * transaction_id : 1217752501201407033233368018
     * amount : {"payer_total":100,"total":100,"currency":"CNY","payer_currency":"CNY"}
     * mchid : 1230000109
     * trade_state : SUCCESS
     * bank_type : CMC
     * success_time : 2018-06-08T10:34:56+08:00
     * payer : {"openid":"oUpF8uMuAJO_M2pxb1Q9zNjWeS6o"}
     * out_trade_no : 1217752501201407033233368018
     * appid : wxd678efh567hg6787
     * trade_state_desc : 支付成功
     * trade_type : MICROPAY
     * attach : 自定义数据
     * scene_info : {"device_id":"013467007045764"}
     */
    private String transaction_id;
    private AmountEntity amount;
    private String mchid;
    private String trade_state;
    private String bank_type;
    private String success_time;
    private PayerEntity payer;
    private String out_trade_no;
    private String appid;
    private String trade_state_desc;
    private String trade_type;
    private String attach;
    private Scene_infoEntity scene_info;

    public void setTransaction_id(String transaction_id) {
        this.transaction_id = transaction_id;
    }

    public void setAmount(AmountEntity amount) {
        this.amount = amount;
    }

    public void setMchid(String mchid) {
        this.mchid = mchid;
    }

    public void setTrade_state(String trade_state) {
        this.trade_state = trade_state;
    }

    public void setBank_type(String bank_type) {
        this.bank_type = bank_type;
    }

    public void setSuccess_time(String success_time) {
        this.success_time = success_time;
    }

    public void setPayer(PayerEntity payer) {
        this.payer = payer;
    }

    public void setOut_trade_no(String out_trade_no) {
        this.out_trade_no = out_trade_no;
    }

    public void setAppid(String appid) {
        this.appid = appid;
    }

    public void setTrade_state_desc(String trade_state_desc) {
        this.trade_state_desc = trade_state_desc;
    }

    public void setTrade_type(String trade_type) {
        this.trade_type = trade_type;
    }

    public void setAttach(String attach) {
        this.attach = attach;
    }

    public void setScene_info(Scene_infoEntity scene_info) {
        this.scene_info = scene_info;
    }

    public String getTransaction_id() {
        return transaction_id;
    }

    public AmountEntity getAmount() {
        return amount;
    }

    public String getMchid() {
        return mchid;
    }

    public String getTrade_state() {
        return trade_state;
    }

    public String getBank_type() {
        return bank_type;
    }

    public String getSuccess_time() {
        return success_time;
    }

    public PayerEntity getPayer() {
        return payer;
    }

    public String getOut_trade_no() {
        return out_trade_no;
    }

    public String getAppid() {
        return appid;
    }

    public String getTrade_state_desc() {
        return trade_state_desc;
    }

    public String getTrade_type() {
        return trade_type;
    }

    public String getAttach() {
        return attach;
    }

    public Scene_infoEntity getScene_info() {
        return scene_info;
    }

    public class AmountEntity {
        /**
         * payer_total : 100
         * total : 100
         * currency : CNY
         * payer_currency : CNY
         */
        private int payer_total;
        private int total;
        private String currency;
        private String payer_currency;

        public void setPayer_total(int payer_total) {
            this.payer_total = payer_total;
        }

        public void setTotal(int total) {
            this.total = total;
        }

        public void setCurrency(String currency) {
            this.currency = currency;
        }

        public void setPayer_currency(String payer_currency) {
            this.payer_currency = payer_currency;
        }

        public int getPayer_total() {
            return payer_total;
        }

        public int getTotal() {
            return total;
        }

        public String getCurrency() {
            return currency;
        }

        public String getPayer_currency() {
            return payer_currency;
        }
    }

    public class PayerEntity {
        /**
         * openid : oUpF8uMuAJO_M2pxb1Q9zNjWeS6o
         */
        private String openid;

        public void setOpenid(String openid) {
            this.openid = openid;
        }

        public String getOpenid() {
            return openid;
        }
    }

    public class Scene_infoEntity {
        /**
         * device_id : 013467007045764
         */
        private String device_id;

        public void setDevice_id(String device_id) {
            this.device_id = device_id;
        }

        public String getDevice_id() {
            return device_id;
        }
    }
}
